package com.kkwrite.regimen.common.entity.dto.order;

import com.kkwrite.regimen.common.entity.dto.item.ItemDetailDTO;
import com.kkwrite.regimen.common.entity.dto.shop.ShopDetailDTO;

import java.io.Serializable;
import java.time.LocalDateTime;
import java.util.Date;

/** 
 * 订单详情 DTO
 *
 * @author Soosky Wang
 * @date 2018年7月21日 下午5:55:32 
 * @version 1.0.0
 */
public class OrderDetailDTO implements Serializable {
	private static final long serialVersionUID = 2226328924740259596L;

	private String orderCode;
	private Short orderType;
	private String phoneNum;
	private Short orderStatus;
	private Double orderAmount;
	private Integer orderQuantity;
	private Short payStatus;
	/**
	 * 支付方式
	 */
	private Short payment;
	private Date payStartTime;
	private Date payEndTime;
	private Short refund;
	private Short refundSate;
	private Date validTime;
	private Date invalidTime;
	/**
	 * 投保状态
	 */
	private Short insuredState;
	private Float insuredAmount;
	private String insuredName;
	private String insuredIdCard;
	private Date insuredStartTime;
	private Date insuredEndTime;
	/**
	 * 是否预约
	 */
	private Short appointment;
	private Date appointmentTime;

	private LocalDateTime createTime;

	/**
	 * 提前预约时间
	 */
	private Short appointmentLong;
	/**
	 * 服务开始时间
	 */
	private LocalDateTime serviceStartTime;
	/**
	 * 服务结束时间
	 */
	private LocalDateTime serviceEndTime;
	/**
	 * 是否已评价
	 */
	private Integer reviewed;

	/**
	 * 商户是否已评价
	 */
	private Integer shopReviewed;

	/**
	 * 退款成功时间
	 */
	private LocalDateTime refundTime;

	/**
	 * 店铺详情
	 */
	private ShopDetailDTO shop;

	/**
	 * 订单项目
	 */
	private ItemDetailDTO item;
	
	private Long shopItemNum;
	

	public Long getShopItemNum() {
		return shopItemNum;
	}

	public void setShopItemNum(Long shopItemNum) {
		this.shopItemNum = shopItemNum;
	}

	public String getOrderCode() {
		return orderCode;
	}

	public void setOrderCode(String orderCode) {
		this.orderCode = orderCode;
	}

	public Short getOrderType() {
		return orderType;
	}

	public void setOrderType(Short orderType) {
		this.orderType = orderType;
	}

	public String getPhoneNum() {
		return phoneNum;
	}

	public void setPhoneNum(String phoneNum) {
		this.phoneNum = phoneNum;
	}

	public Short getOrderStatus() {
		return orderStatus;
	}

	public void setOrderStatus(Short orderStatus) {
		this.orderStatus = orderStatus;
	}

	public Double getOrderAmount() {
		return orderAmount;
	}

	public void setOrderAmount(Double orderAmount) {
		this.orderAmount = orderAmount;
	}

	public Integer getOrderQuantity() {
		return orderQuantity;
	}

	public void setOrderQuantity(Integer orderQuantity) {
		this.orderQuantity = orderQuantity;
	}

	public Short getPayStatus() {
		return payStatus;
	}

	public void setPayStatus(Short payStatus) {
		this.payStatus = payStatus;
	}

	public Short getPayment() {
		return payment;
	}

	public void setPayment(Short payment) {
		this.payment = payment;
	}

	public Date getPayStartTime() {
		return payStartTime;
	}

	public void setPayStartTime(Date payStartTime) {
		this.payStartTime = payStartTime;
	}

	public Date getPayEndTime() {
		return payEndTime;
	}

	public void setPayEndTime(Date payEndTime) {
		this.payEndTime = payEndTime;
	}

	public Short getRefund() {
		return refund;
	}

	public void setRefund(Short refund) {
		this.refund = refund;
	}

	public Short getRefundSate() {
		return refundSate;
	}

	public void setRefundSate(Short refundSate) {
		this.refundSate = refundSate;
	}

	public Date getValidTime() {
		return validTime;
	}

	public void setValidTime(Date validTime) {
		this.validTime = validTime;
	}

	public Date getInvalidTime() {
		return invalidTime;
	}

	public void setInvalidTime(Date invalidTime) {
		this.invalidTime = invalidTime;
	}

	public Short getInsuredState() {
		return insuredState;
	}

	public void setInsuredState(Short insuredState) {
		this.insuredState = insuredState;
	}

	public Float getInsuredAmount() {
		return insuredAmount;
	}

	public void setInsuredAmount(Float insuredAmount) {
		this.insuredAmount = insuredAmount;
	}

	public String getInsuredName() {
		return insuredName;
	}

	public void setInsuredName(String insuredName) {
		this.insuredName = insuredName;
	}

	public String getInsuredIdCard() {
		return insuredIdCard;
	}

	public void setInsuredIdCard(String insuredIdCard) {
		this.insuredIdCard = insuredIdCard;
	}

	public Date getInsuredStartTime() {
		return insuredStartTime;
	}

	public void setInsuredStartTime(Date insuredStartTime) {
		this.insuredStartTime = insuredStartTime;
	}

	public Date getInsuredEndTime() {
		return insuredEndTime;
	}

	public void setInsuredEndTime(Date insuredEndTime) {
		this.insuredEndTime = insuredEndTime;
	}

	public Short getAppointment() {
		return appointment;
	}

	public void setAppointment(Short appointment) {
		this.appointment = appointment;
	}

	public Date getAppointmentTime() {
		return appointmentTime;
	}

	public void setAppointmentTime(Date appointmentTime) {
		this.appointmentTime = appointmentTime;
	}

	public Short getAppointmentLong() {
		return appointmentLong;
	}

	public void setAppointmentLong(Short appointmentLong) {
		this.appointmentLong = appointmentLong;
	}

	public ShopDetailDTO getShop() {
		return shop;
	}

	public void setShop(ShopDetailDTO shop) {
		this.shop = shop;
	}

	public ItemDetailDTO getItem() {
		return item;
	}

	public void setItem(ItemDetailDTO item) {
		this.item = item;
	}

	public LocalDateTime getServiceStartTime() {
		return serviceStartTime;
	}

	public void setServiceStartTime(LocalDateTime serviceStartTime) {
		this.serviceStartTime = serviceStartTime;
	}

	public LocalDateTime getServiceEndTime() {
		return serviceEndTime;
	}

	public void setServiceEndTime(LocalDateTime serviceEndTime) {
		this.serviceEndTime = serviceEndTime;
	}

	public Integer getReviewed() {
		return reviewed;
	}

	public void setReviewed(Integer reviewed) {
		this.reviewed = reviewed;
	}

	public LocalDateTime getRefundTime() {
		return refundTime;
	}

	public void setRefundTime(LocalDateTime refundTime) {
		this.refundTime = refundTime;
	}

	public Integer getShopReviewed() {
		return shopReviewed;
	}

	public void setShopReviewed(Integer shopReviewed) {
		this.shopReviewed = shopReviewed;
	}

	public LocalDateTime getCreateTime() {
		return createTime;
	}

	public void setCreateTime(LocalDateTime createTime) {
		this.createTime = createTime;
	}

	@Override
	public String toString() {
		return "OrderDetailDTO [orderCode=" + orderCode + ", orderType="
				+ orderType + ", phoneNum=" + phoneNum + ", orderStatus="
				+ orderStatus + ", orderAmount=" + orderAmount
				+ ", orderQuantity=" + orderQuantity + ", payStatus="
				+ payStatus + ", payment=" + payment + ", payStartTime="
				+ payStartTime + ", payEndTime=" + payEndTime + ", refund="
				+ refund + ", refundSate=" + refundSate + ", validTime="
				+ validTime + ", invalidTime=" + invalidTime
				+ ", insuredState=" + insuredState + ", insuredAmount="
				+ insuredAmount + ", insuredName=" + insuredName
				+ ", insuredIdCard=" + insuredIdCard + ", insuredStartTime="
				+ insuredStartTime + ", insuredEndTime=" + insuredEndTime
				+ ", appointment=" + appointment + ", appointmentTime="
				+ appointmentTime + ", createTime=" + createTime
				+ ", appointmentLong=" + appointmentLong
				+ ", serviceStartTime=" + serviceStartTime
				+ ", serviceEndTime=" + serviceEndTime + ", reviewed="
				+ reviewed + ", shopReviewed=" + shopReviewed + ", refundTime="
				+ refundTime + ", shop=" + shop + ", item=" + item
				+ ", shopItemNum=" + shopItemNum + "]";
	}

}
